home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / ISSUE02 / XTOOLS / XTOOL.ZIP / SCRSAV.INT < prev    next >
Encoding:
Text File  |  1995-05-28  |  2.4 KB  |  66 lines

  1. {*******************************************************}
  2. {                                                       }
  3. {       xTool - Component Collection                    }
  4. {                                                       }
  5. {       Copyright (c) 1995 Stefan B÷ther                }
  6. {                                                       }
  7. {*******************************************************}
  8. unit ScrSav;
  9.  { component for easy screen-saver building }
  10.  
  11. interface
  12.  
  13. uses
  14.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  15.   Forms, Dialogs, IniFiles;
  16.  
  17. type
  18.   TSaverDesktop = (sdBlack,sdTransparent);
  19.  
  20.   TPasswordEvent= function (Sender:TObject; var aPass:String):Boolean of object;
  21.  
  22.   TScreenSaver  = class(TComponent)
  23.   private
  24.     { Private-Deklarationen }
  25.     FOldMouse : TPoint;                  { The mouse position }
  26.     FDesktop  : TSaverDesktop;
  27.     FSaving   : Boolean;
  28.     FTitle    : PString;
  29.     FControl  : TIniFile;
  30.     FOnSetup  : TNotifyEvent;
  31.     FOnSave   : TNotifyEvent;
  32.     FOnPass   : TPasswordEvent;
  33.     procedure SetTitle(const Value:String);
  34.     function  GetTitle: String;
  35.     procedure SetPassword(Value:String);
  36.     function  GetPassword:String;
  37.     function  GetSection: String;
  38.     procedure ShutDown;
  39.     procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,Y: Integer);
  40.     procedure FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);
  41.     procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
  42.                             Shift: TShiftState; X, Y: Integer);
  43.   protected
  44.     { Protected-Deklarationen }
  45.     procedure   ReadState(Reader: TReader); override;
  46.   public
  47.     { Public-Deklarationen }
  48.     constructor Create(aOwner:TComponent); override;
  49.     destructor Destroy; override;
  50.     function   CheckPassword(Value:String):Boolean;
  51.     property   Saving: Boolean read FSaving;
  52.     property   CtrlIni: TIniFile read FControl;
  53.     property   CtrlSection: String read GetSection;
  54.     property   Password: String read GetPassword write SetPassword;
  55.   published
  56.     { Published-Deklarationen }
  57.     property Desktop: TSaverDesktop read FDesktop write FDesktop;
  58.     property Title: String read GetTitle write SetTitle;
  59.     property OnSetup: TNotifyEvent read FOnSetup write FOnSetup;
  60.     property OnSave: TNotifyEvent read FOnSave write FOnSave;
  61.     property OnPassword: TPasswordEvent read FOnPass write FOnPass;
  62.   end;
  63.  
  64. procedure Register;
  65.  
  66.